cssprovider: Remove unused members from scanner
authorBenjamin Otte <otte@redhat.com>
Wed, 18 Apr 2012 20:19:30 +0000 (22:19 +0200)
committerBenjamin Otte <otte@redhat.com>
Fri, 11 May 2012 14:35:30 +0000 (16:35 +0200)
Now that the parser takes care of the file, we don't need to keep track
of it ourselves anymore.

gtk/gtkcssprovider.c

index 128edc3af19b5afbc5d9fa80206dfafa21f6b102..2569bd9309a377a3e7ed085f153f170a679ccecb 100644 (file)
@@ -999,8 +999,6 @@ struct _GtkCssScanner
   GtkCssParser *parser;
   GtkCssSection *section;
   GtkCssScanner *parent;
-  GFile *file;
-  GFile *base;
   GSList *state;
 };
 
@@ -1311,9 +1309,6 @@ gtk_css_scanner_destroy (GtkCssScanner *scanner)
   if (scanner->section)
     gtk_css_section_unref (scanner->section);
   g_object_unref (scanner->provider);
-  if (scanner->file)
-    g_object_unref (scanner->file);
-  g_object_unref (scanner->base);
   _gtk_css_parser_free (scanner->parser);
 
   g_slice_free (GtkCssScanner, scanner);
@@ -1357,18 +1352,6 @@ gtk_css_scanner_new (GtkCssProvider *provider,
   if (section)
     scanner->section = gtk_css_section_ref (section);
 
-  if (file)
-    {
-      scanner->file = g_object_ref (file);
-      scanner->base = g_file_get_parent (file);
-    }
-  else
-    {
-      char *dir = g_get_current_dir ();
-      scanner->base = g_file_new_for_path (dir);
-      g_free (dir);
-    }
-
   scanner->parser = _gtk_css_parser_new (text,
                                          gtk_css_scanner_parser_error,
                                          scanner);
@@ -1376,19 +1359,14 @@ gtk_css_scanner_new (GtkCssProvider *provider,
   return scanner;
 }
 
-static GFile *
-gtk_css_scanner_get_base_url (GtkCssScanner *scanner)
-{
-  return scanner->base;
-}
-
 static gboolean
 gtk_css_scanner_would_recurse (GtkCssScanner *scanner,
                                GFile         *file)
 {
   while (scanner)
     {
-      if (scanner->file && g_file_equal (scanner->file, file))
+      GFile *parser_file = _gtk_css_parser_get_file (scanner->parser);
+      if (parser_file && g_file_equal (parser_file, file))
         return TRUE;
 
       scanner = scanner->parent;
@@ -1893,7 +1871,7 @@ parse_import (GtkCssScanner *scanner)
       char *uri;
 
       uri = _gtk_css_parser_read_string (scanner->parser);
-      file = g_file_resolve_relative_path (gtk_css_scanner_get_base_url (scanner), uri);
+      file = _gtk_css_parser_get_file_for_path (scanner->parser, uri);
       g_free (uri);
     }
   else